﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DTO;
using DAO;

namespace BUS
{
    public class Ve_BUS
    {
        #region Truy van du lieu
        //Các hàm truy xuất dữ liệu
        public static List<Ve_DTO> layDanhSachVe()
        {
            return Ve_DAO.layDanhSachVe();
        }
        public static Ve_DTO layVeTheoMaVe(string maVe)
        {
            if (Ve_DAO.kiemTraMaVe(maVe))
            {
                return Ve_DAO.layVeTheoMaVe(maVe);
            }
            return null;
        }
       
        public static List<Ve_DTO> layVeTheoMaLB(string maLB)//CHO NAY CAN SUA LAI KIEU TRA VE
        {
            return Ve_DAO.layVeTheoMaLB(maLB);
        }
        public static Ve_DTO layVeTheoMaHK(string maHK)
        {
            return Ve_DAO.layVeTheoMaHK(maHK);
        }


        #endregion

        #region Thao tac insert, update, delete
        //Các hàm tương tác với cơ sở dữ liệu
        public static int themVe(Ve_DTO ve)
        {
            if (Ve_DAO.kiemTraMaVe(ve.MaVe))    //nghia la ve chua ton tai trog danh sach
            {
                return 2;
            }
            if (Ve_DAO.kiemTraTGianDatVe(ve) ==false)       //nghia la thoi gian dat ve hop le
            {
                return 3;
            }
            return Ve_DAO.themVe(ve) ? 1 : 0;
        }
        public static bool suaVe(Ve_DTO ve)
        {
            if (Ve_DAO.kiemTraMaVe(ve.MaVe))
            {
                if(Ve_DAO.kiemTraTGianDatVe(ve))
                    return Ve_DAO.suaVe(ve);
            }
            return false;
        }
        public static bool xoaVe(Ve_DTO ve)
        {
            if (Ve_DAO.kiemTraMaVe(ve.MaVe))
                return Ve_DAO.xoaVe(ve);
            return false;
        }
        #endregion

        #region Thong ke 
        //thong ke so ve dat
        public static int soGheDat1(string maLB)
        {
            return Ve_DAO.soGheDat1(maLB);
        }
        public static int soGheDat2(string maLB)
        {
            return Ve_DAO.soGheDat2(maLB);
        }
        #endregion
    }
}
